import {Device} from "./device.model"
/**
 * 系统风场对象
 * 
 * @export
 * @class Farm
 */
import {TurboperCurrentTotle} from "./turboper-current-totle.model"

export class Farm {
  /**
   * Creates an instance of Farm.
   * @param {number} farmId 风场ID
   * @param {number} companyId 公司ID
   * @param {string} farmCode 风场代码
   * @param {string} farmName 风场名称
   * @param {string} farmCategory 风场类别(映射SetOfKey-‘FarmCategory’ )
   * @param {string} simpleCode 简单标示
   * @param {number} capacity 总装机容量(MW)
   * @param {string} productionDate 风场建设日期
   * @param {number} posX 风场屏幕X轴坐标
   * @param {number} posY 风场屏幕Y轴坐标
   * @param {string} contact 联系人
   * @param {string} telno 联系电话
   * @param {string} email 电子邮件
   * @param {string} faxno 传真
   * @param {string} city 所在城市
   * @param {string} addr 风场地址
   * @param {string} introduce 风场简介
   * @param {string} seq 风场排序
   * @param {string} [unDefault] 是否是默认风场(true:是默认风场,false:不默认风场)
   * @param {boolean} [isChecked] 风场是否选中
   * @param {number} [totalTurbine] 风机数量
   * @memberOf Farm
   */
  constructor(
    public farmId: number,
    public companyId: number,
    public farmCode: string,
    public farmName: string,
    public farmCategory: string,
    public simpleCode: string,
    public capacity: number,
    public productionDate: string,
    public posx: number,
    public posy: number,
    public contact: string,
    public telNo: string,
    public email: string,
    public faxNo: string,
    public city: string,
    public addr: string,
    public introduce: string,
    public unShowName:boolean,
    public unDefault:boolean=false,
    public isChecked: boolean = false,
    public totalTurbine: number = 0,
    
    public position?:string,
    public coordinateRange?:string,
    public devices?:Device[],
    public seq?:number, 
    public windEnergy?:number,    
    public farmCategoryName?: string,
    
    ) {
    Object.defineProperty(this, "isChecked", { enumerable: false });
    Object.defineProperty(this, "totalTurbine", { enumerable: false });   
    Object.defineProperty(this, "unDefault", { enumerable: false });   
    Object.defineProperty(this, "windEnergy", { enumerable: false });   
    Object.defineProperty(this, "farmCategoryName", { enumerable: false });   
  }
}



// WEBPACK FOOTER //
// ./src/app/entity/farm.model.ts